//! primjer ostvarenja "spavanja" - jednostavan jedno-zadacni sustav!

#include <tipkovnica.h>
#include <ispis.h>
#include <vrijeme.h>

int rad_s_tipkovnicom ()
{
	ispisi("\n[%s:%s]\n", __FILE__, __FUNCTION__);

	int i, n;
	int znak, duljina;
	char ms[80];

	ispisi("\nTestiram: tipkovnica_dohvati_znak()\n");
	ispisi("\nTest jeke: unesi rijec + \\n ('kraj' za kraj)\n");
	for (i = 0; ; i++) {
		ispisi("%d: ", i);

		ms[0] = 0;
		n = 0;

		while (n < 80) {
			znak = tipkovnica_dohvati_znak();
			ms[n++] = znak;

			if (znak == '\n') {
				ms[n] = 0;
				ispisi("%d: %s", i, ms);
				break;
			}
		}
		
		if (n > 4 && ms[0] == 'k' && ms[1] == 'r' && ms[2] == 'a'
				&& ms[3] == 'j')
			break;
	}
	
	ispisi("\nTestiram: tipkovnica_dohvati_red()\n");
	ispisi("\nTest jeke: unesi rijec + \\n ('kraj' za kraj)\n");
	for (i = 0; ; i++) {
		ispisi("%d: ", i);

		duljina = tipkovnica_dohvati_red(ms, 80);

		if (duljina > 0)
			ispisi("%d: %s\n", i, ms);
		else
			ispisi("Greska! (duljina = %d)\n", duljina);
		
		if (duljina > 3 && ms[0] == 'k' && ms[1] == 'r' && ms[2] == 'a'
				&& ms[3] == 'j')
			break;
	}

	ispisi("\nTestiram: tipkovnica_dohvati_rijec()\n");
	ispisi("\nTest jeke: unesi rijec + \\n ('kraj' za kraj)\n");
	for (i = 0; ; i++) {
		ispisi("%d: ", i);
		
		duljina = tipkovnica_dohvati_rijec(ms, 80);
		if (duljina)
			ispisi("\n%d: %s\n", i, ms);
		
		if (duljina > 3 && ms[0] == 'k' && ms[1] == 'r' && ms[2] == 'a'
				&& ms[3] == 'j')
			break;
	}

	ispisi("Kraj testiranja tipkovnice!\n");

	return 0;
}
